package com.emser.unc.client.service;

import java.util.ArrayList;

import com.emser.unc.serializable.NoSaleReportDTO;
import com.emser.unc.serializable.ProductSoldDTO;
import com.emser.unc.serializable.ResultDTO;
import com.emser.unc.serializable.SaleReportDTO;
import com.google.gwt.user.client.rpc.AsyncCallback;

public interface ReportsServiceAsync {
	void getSaleReports(String cursorString, int range, String userAccountName,
			AsyncCallback<ResultDTO<SaleReportDTO>> callback);

	void getSaleNoReports(String cursorString, int range,
			String userAccountName,
			AsyncCallback<ResultDTO<NoSaleReportDTO>> callback);

	void getSaleReportCount(String userAccountName, AsyncCallback<Integer> callback);

	void getNoSaleReportCount(String userAccountName,
			AsyncCallback<Integer> callback);

	void getProductsSold(String cursorString, int range, Long idReport,
			String userAccountName,
			AsyncCallback<ResultDTO<ProductSoldDTO>> callback);

	void deleteNoSaleReports(String userAccountName, ArrayList<Long> idReports,
			AsyncCallback<Boolean> cb);

	void deleteSaleReports(String name, ArrayList<Long> idReports,
			AsyncCallback<Boolean> cb);

	void getProductsSoldsCount(String userAName, Long idReport,
			AsyncCallback<Integer> callback);

}
